package com.xiaoyy.sso.gateway.req;

import com.xiaoyy.core.common.vo.BaseVO;
import com.xiaoyy.sso.gateway.validators.LoginValidators;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;

@Data
public class RegisterReq extends BaseVO {
    @ApiModelProperty(value = "用户名 应用账号可以使用工号等唯一标识")
    private String userName;

    @ApiModelProperty(value = "密码")
    @NotBlank(groups = {
            LoginValidators.Register.class
    },message = "密码不能为空")
    private String userPassword;

    @ApiModelProperty(value = "电子邮箱")
    private String email;

    @ApiModelProperty(value = "手机")
    @NotBlank(groups = {
            LoginValidators.Register.class
    },message = "手机不能为空")
    private String cellphone;
    /**
     * 短信验证码
     */
    @ApiModelProperty(notes = "短信验证码")
    private String shortMsgCode;
    /**
     * 普通图片验证码
     */
    @ApiModelProperty(notes = "图片验证码")
    private String imgCode;
    @ApiModelProperty(value = "姓名")
    @NotBlank(groups = {
            LoginValidators.Register.class
    },message = "姓名不能为空")
    private String fullName;

    @ApiModelProperty(value = "身份证")
    @NotBlank(groups = {
            LoginValidators.Register.class
    },message = "身份证不能为空")
    private String idcard;

    @ApiModelProperty(value = "用户类型")
    @NotBlank(groups = {
            LoginValidators.Register.class
    },message = "用户类型不能为空")
    private String userType;

    @ApiModelProperty(value = "登入类型")
    private String loginType;

    @ApiModelProperty(value = "第三方id")
    private String openId;

    @ApiModelProperty(value = "应用id")
    private String clientId;

    @ApiModelProperty(value = "登录组织单位")
    private String orgId;

    @ApiModelProperty(value = "系统版本号")
    private String version;

    @ApiModelProperty(value = "系统编号")
    private String systemCode;

    @ApiModelProperty(value = "系统名称")
    private String systemName;

    @ApiModelProperty(value = "统一社会信用代码")
    private String creditCode;
}
